const user1 = {age: 11}
const user2 = {age: 22}
const user3 = {age: 33}

const nameList = [user1.age, user2.age, user3.age];

function fn() {
  const num1 = 1;
  const num2 = 2;
}

fn();

function fn1() {
  const obj1 = {}
  const obj2 = {}
  obj1.name = obj2;
  obj2.name = obj1;
  return '111';
}

fn1();
// 当执行完函数调用的时候 在全局中已经找不到obj1和obj2了 obj1和obj2的引用应该为0
// 此时通知GC去删除 但是GC发现obj1有一个属性指向了obj2 同样obj2也有属性指向obj1
// 因为他们在fn1这个作用域中有互相引用所以引用计数器其实不为0 此时引用计数算法的GC没法将obj1 obj2回收
// 类似的这种互相引用的对象 引用计数器算法的GC都无法处理
